@charset "UTF-8";
html {
		overflow: scroll;
}

* {
		margin: 0;
		padding: 0;
		box-sizing: border-box;
}

body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, p, blockquote, th, td {
		margin: 0;
		padding: 0;
}

table {
		border-collapse: collapse;
		border-spacing: 0;
}

th, td {
		vertical-align: top;
}

fieldset, img {
		border: 0;
}

address, caption, cite, code, dfn, em, th, var {
		font-style: normal;
		font-weight: normal;
}

caption, th {
		text-align: left;
}

h1, h2, h3, h4, h5, h6 {
		font-size: 100%;
}

q:before, q:after {
		content: '';
}

ul, ol, li {
		list-style-type: none;
}

/* --clearfix------------- */
.clearfix:after {
		content: ".";
		display: block;
		clear: both;
		height: 0;
		visibility: hidden;
}

/* フォーム関連をリセット */
input[type="submit"],
input[type="button"] {
		-webkit-appearance: none;
		-moz-appearance: none;
		border-radius: 0;
		-webkit-box-sizing: border-box;
		-webkit-appearance: button;
		appearance: button;
		border: none;
		box-sizing: border-box;
		background-color: transparent;
		box-shadow: 0 0 0 rgba(51, 51, 51, 0);
		cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
		display: none;
}

input[type="submit"]:focus,
input[type="button"]:focus {
		outline-offset: -2px;
}

input[type="text"],
input[type="tel"],
input[type="email"],
textarea,
select {
		display: block;
		border: 0 none;
		box-shadow: 0 0 0 rgba(51, 51, 51, 0);
		-webkit-appearance: none;
		-webkit-tap-highlight-color: transparent;
		border-radius: 0;
		outline: none;
		background: none;
		font-size: 1.5rem;
		font-family: "Microsoft YaHei", "微软雅黑", "Microsoft JhengHei", "微軟正黑體", STHeiti, MingLiu, "Noto Sans JP", "メイリオ", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
}

select {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		border: none;
		outline: none;
		background: transparent;
}

select::-ms-expand {
		display: none;
}

@media only screen and (max-width: 1024px) {
		input[type="text"],
		input[type="tel"],
		input[type="email"],
		textarea,
		select {
				font-size: 1.6rem;
		}
}

*, *:after, *:before {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
}

/* ------------------------
    基本構造
------------------------ */
html {
		padding: 0;
		margin: 0;
		font-size: 10px;
		overflow-x: hidden;
		-webkit-text-size-adjust: 100%;
		-ms-text-size-adjust: 100%;
}

body {
		font-family: "Microsoft YaHei", "微软雅黑", "Microsoft JhengHei", "微軟正黑體", STHeiti, MingLiu, "Noto Sans JP", "メイリオ", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		color: #333;
		line-height: 1.8;
		background-color: #FDFDFB;
}

#wrap {
		width: 100%;
		overflow: hidden;
}

.contents {
		position: relative;
		width: 1230px;
		max-width: 100%;
		margin: 0 auto;
		padding: 0 15px;
}

.contents .min-contents {
		width: 960px;
		padding: 0;
}

.min-contents {
		width: 990px;
		max-width: 100%;
		margin: 90px auto 0;
		padding: 0 15px;
}


.txt-cmn {
		margin: 30px 0 0;
}

.txt-cmn:first-child {
		margin-top: 0;
}

@media only screen and (max-width: 896px) {
		.txt-cmn {
				margin-top: 20px;
		}
}

a {
		text-decoration: none;
		transition: all .3s ease;
		color: #333;
}

a:hover {
		text-decoration: none;
}

a.link {
	text-decoration: underline;
	color: #FF8001;
}

button {
	border: none;
	transition: all .3s ease;
}

button:hover {
	transition: all .3s ease;
}

img {
		max-width: 100%;
		height: auto;
}

.obj-fit,
.obj-fit--abs,
.obj-fit--contain,
.obj-fit--abs-contain {
		display: block;
		overflow: hidden;
}

.obj-fit .ofi,
.obj-fit--abs .ofi,
.obj-fit--contain .ofi,
.obj-fit--abs-contain .ofi {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		font-family: 'object-fit: cover;';
}

.obj-fit--contain .ofi, .obj-fit--abs-contain .ofi {
		font-family: 'object-fit: ccontain;';
}

.obj-fit--abs,
.obj-fit--abs-contain {
		position: relative;
}

.obj-fit--abs .ofi,
.obj-fit--abs-contain .ofi {
		position: absolute;
		top: 0;
		left: 0;
}

.object-fit,
.object-fit--abs,
.object-fit--contain,
.object-fit--abs-contain {
		display: block;
		overflow: hidden;
}

.object-fit .ofi,
.object-fit--abs .ofi,
.object-fit--contain .ofi,
.object-fit--abs-contain .ofi {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: all .5s ease;
		font-family: 'object-fit: cover;';
}

.object-fit:hover .ofi,
.object-fit--abs:hover .ofi,
.object-fit--contain:hover .ofi,
.object-fit--abs-contain:hover .ofi {
		transform: scale(1.06);
}

.object-fit--contain .ofi,
.object-fit--abs-contain .ofi {
		font-family: 'object-fit: ccontain;';
}

.object-fit--abs,
.object-fit--abs-contain {
		position: relative;
}

.object-fit--abs .ofi,
.object-fit--abs-contain .ofi {
		position: absolute;
		top: 0;
		left: 0;
}

.fig-cmn,
.fig-cmn-01,
.fig-cmn-02 {
		margin-top: 45px;
}

.fig-cmn:first-child,
.fig-cmn-01:first-child,
.fig-cmn-02:first-child {
		margin-top: 0;
}

.fig-cmn img,
.fig-cmn-01 img,
.fig-cmn-02 img {
		display: block;
		margin: 0 auto;
}

.fig-cmn figcaption,
.fig-cmn-01 figcaption,
.fig-cmn-02 figcaption {
		font-size: 1.3rem;
		margin-top: 5px;
		color: #666666;
}

@media only screen and (max-width: 896px) {
		.fig-cmn-01 {
				margin: 30px -15px 0;
		}
		.fig-cmn-02 {
				padding: 0 20px;
		}
}

[class*="fig-ratio-"] {
		display: block;
		position: relative;
		overflow: hidden;
		margin-top: 45px;
}

[class*="fig-ratio-"]:first-child {
		margin-top: 0;
}

[class*="fig-ratio-"] img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		font-family: 'object-fit: cover;';
}

@media only screen and (max-width: 896px) {
		[class*="fig-ratio-"] {
				margin: 30px -15px 0;
				padding-top: 100%;
		}
}

.fig-ratio-01 {
		padding-top: 56.25%;
}

@media only screen and (max-width: 896px) {
		.fig-ratio-01 {
				padding-top: 100%;
		}
}

.fig-ratio-02 {
		padding-top: 66.6666%;
}

@media only screen and (max-width: 896px) {
		.fig-ratio-02 {
				padding-top: 75%;
		}
}

.al-right {
		text-align: right;
}

.al-center {
		text-align: center;
}

.al-left {
		text-align: left;
}

.al-center-pc {
		text-align: center;
}

.nolink-pc {
		pointer-events: none;
		color: #333333;
		text-decoration: none;
}

.nolink {
		pointer-events: none;
		color: #333333;
		cursor: pointer;
		text-decoration: none;
}

.only-sp {
		display: none !important;
}

.disp-ib {
		display: inline-block;
}

@media only screen and (max-width: 896px) {
		.only-pc {
				display: none !important;
		}
		.only-sp {
				display: block !important;
		}
		.al-center-pc {
				text-align: left;
		}
		.nolink-pc {
				pointer-events: auto;
				color: #17b5e6;
				text-decoration: underline;
		}
}


/* ------------------------
    カラム分け
------------------------ */
.u-grid {
  -js-display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 10px -15px 0;
  position: relative;
}
.u-grid.ai-center {
  -webkit-align-items: center;
  align-items: center;
}
.u-grid.jc-center {
  -webkit-justify-content: center;
  justify-content: center;
}
.u-grid.u-g_gap10 {
  margin: 10px -5px 0;
}
.u-grid.u-g_gap10 .col {
  padding: 0 5px;
}
.u-grid.u-g_gap20 {
  margin: 10px -10px 0;
}
.u-grid.u-g_gap20 .col {
  padding: 0 10px;
}
.u-grid.u-g_gap40 {
  margin: 10px -20px 0;
}
.u-grid.u-g_gap40 .col {
  padding: 0 20px;
}
.u-grid.u-g_gap50 {
  margin: 10px -25px 0;
}
.u-grid.u-g_gap50 .col {
  padding: 0 25px;
}
.u-grid.u-g_gap60 {
  margin: 10px -30px 0;
}
.u-grid.u-g_gap60 .col {
  padding: 0 30px;
}
.u-grid .col {
  box-sizing: border-box;
  position: relative;
  padding: 0 15px;
  margin-top: 30px;
}
.u-grid .col.col-l-2 {
  width: 16.6666%;
}
.u-grid .col.col-l-20p {
  width: 20%;
}
.u-grid .col.col-l-3 {
  width: 25%;
}
.u-grid .col.col-l-4 {
  width: 33.33333%;
}
.u-grid .col.col-l-5 {
  width: 41.66666%;
}
.u-grid .col.col-l-0 {
  width: 45.83333%;
}
.u-grid .col.col-l-6 {
  width: 50%;
}
.u-grid .col.col-l-1 {
  width: 54.16666%;
}
.u-grid .col.col-l-7 {
  width: 58.33333%;
}
.u-grid .col.col-l-8 {
  width: 66.66666%;
}
.u-grid .col.col-l-9 {
  width: 75%;
}
.u-grid .col.col-l-10 {
  width: 83.33333%;
}
.u-grid .col.col-l-12 {
  width: 100%;
}

.u-order-l-1 {
  -webkit-box-ordinal-group: 1;
  -webkit-order: 1;
  order: 1;
}

.u-order-l-2 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 2;
  order: 2;
}

.u-order-l-3 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 3;
  order: 3;
}

.u-order-l-4 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 4;
  order: 4;
}

.u-order-l-5 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 5;
  order: 5;
}

.u-order-l-6 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 6;
  order: 6;
}

@media screen and (max-width: 1024px) {
  .u-grid .col.col-m-2 {
    width: 16.6666%;
  }
  .u-grid .col.col-m-20p {
    width: 20%;
  }
  .u-grid .col.col-m-3 {
    width: 25%;
  }
  .u-grid .col.col-m-4 {
    width: 33.33333%;
  }
  .u-grid .col.col-m-5 {
    width: 41.66666%;
  }
  .u-grid .col.col-m-6 {
    width: 50%;
  }
  .u-grid .col.col-m-7 {
    width: 58.33333%;
  }
  .u-grid .col.col-m-8 {
    width: 66.66666%;
  }
  .u-grid .col.col-m-9 {
    width: 75%;
  }
  .u-grid .col.col-m-10 {
    width: 83.33333%;
  }
  .u-grid .col.col-m-12 {
    width: 100%;
  }
  .u-order-m-1 {
    -webkit-box-ordinal-group: 1;
    -webkit-order: 1;
    order: 1;
  }
  .u-order-m-2 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 2;
    order: 2;
  }
  .u-order-m-3 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 3;
    order: 3;
  }
  .u-order-m-4 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 4;
    order: 4;
  }
  .u-order-m-5 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 5;
    order: 5;
  }
  .u-order-m-6 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 6;
    order: 6;
  }
}
@media only screen and (max-width: 768px) {
  .u-grid {
    margin: 5px -5px 0;
  }
  .u-grid .col {
    padding: 0 5px;
  }
  .u-grid .col.col-s-2 {
    width: 16.6666%;
  }
  .u-grid .col.col-s-20p {
    width: 20%;
  }
  .u-grid .col.col-s-3 {
    width: 25%;
  }
  .u-grid .col.col-s-4 {
    width: 33.33333%;
  }
  .u-grid .col.col-s-5 {
    width: 41.66666%;
  }
  .u-grid .col.col-s-6 {
    width: 50%;
  }
  .u-grid .col.col-s-7 {
    width: 58.33333%;
  }
  .u-grid .col.col-s-8 {
    width: 66.66666%;
  }
  .u-grid .col.col-s-9 {
    width: 75%;
  }
  .u-grid .col.col-s-10 {
    width: 83.33333%;
  }
  .u-grid .col.col-s-12 {
    width: 100%;
  }
  .order-s-1 {
    -webkit-box-ordinal-group: 1;
    -webkit-order: 1;
    order: 1;
  }
  .order-s-2 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 2;
    order: 2;
  }
  .order-s-3 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 3;
    order: 3;
  }
  .order-s-4 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 4;
    order: 4;
  }
  .order-s-5 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 5;
    order: 5;
  }
  .order-s-6 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 6;
    order: 6;
  }
}

.mt-0 {
		margin-top: 0px;
}
.mt-10 {
		margin-top: 10px;
}

.mt-20 {
		margin-top: 20px;
}

.mt-30 {
		margin-top: 30px;
}

.mt-40 {
		margin-top: 40px;
}

.mt-50 {
		margin-top: 50px;
}

.mt-60 {
		margin-top: 60px;
}

.mt-70 {
		margin-top: 70px;
}

@media only screen and (max-width: 768px) {
	.mt-s-0 {
		margin-top: 0px;
	}
	.mt-s-10 {
		margin-top: 10px;
	}
	.mt-s-20 {
		margin-top: 20px;
	}
	.mt-s-30 {
		margin-top: 30px;
	}
}